Skip to content

perf: add k6 ramp-and-hold spike scenario (Closes #457) - #735

Open
laurentketterle-hub wants to merge 4 commits into
Stellabill:mainfrom
laurentketterle-hub:perf/k6-spike-profile
Open

perf: add k6 ramp-and-hold spike scenario (Closes #457)#735
laurentketterle-hub wants to merge 4 commits into
Stellabill:mainfrom
laurentketterle-hub:perf/k6-spike-profile

Conversation

@laurentketterle-hub

Copy link
Copy Markdown
Contributor

Summary

Adds a k6 load-spike ramp profile focused on the plans read path (GET /api/v1/plans), per #457.

  • tests/k6/plans-spike.js — ramps from 10 to 2000 VUs over 5 minutes, holds for 2 minutes, then cools down. Asserts p99 latency (<500ms) and error rate (<1%) thresholds via k6 thresholds. Uses custom plan_errors counter and plan_response_times trend for per-path observability.
  • .github/workflows/k6-spike-test.yml — GitHub Actions job (workflow_dispatch with staging/production choice) that installs k6, runs the spike scenario with --out=json, and uploads the JSON summary as a CI artifact.

Notes

  • Mirrors the existing tests/k6/statements_soak.js + k6-soak-test.yml conventions (env-driven BASE_URL/API_KEY, workflow_dispatch).
  • No secrets committed; credentials come from repo secrets.

Closes #457

Signed-off-by: laurentketterle-hub <laurentketterle-hub@users.noreply.github.com>
Signed-off-by: laurentketterle-hub <laurentketterle-hub@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Add load-spike ramp profile with k6 stages for burst simulation

1 participant